/************************************************************
** Archivo:		ActividadView
** Autor:		
** Fecha:		16/05/2009 19:19:00
** Descripción:	Clase generada automáticamente
** Cliente:		SC
** Proyecto:	eWedding
************************************************************/

using System;
using System.Collections.Generic;
using System.Text;

using Circo.Framework.BusinessLogic;
using Circo.Framework.Persistencia;

using SC.eWedding.Data.Entities;


namespace SC.eWedding.BusinessLogic.Views
{
    public partial class ActividadView : AbstractView
    {
    
        #region Private Vars

		private ActividadEntity _actividad;

        #endregion

        #region Constructors

		
		public ActividadView()
		{
			CrearVista(false);
		}

		public ActividadView(bool createRelatedViews)
		{
			CrearVista(createRelatedViews);
		}

		private void CrearVista(bool createRelatedViews)
		{
			this._actividad = new ActividadEntity();

			if (createRelatedViews)

			{

				this.Boda = new BodaView(true);

				this.TipoProd = new TipoProdView(true);

			}

		}

		public ActividadView(ActividadEntity unaEntidad)
		{
			if (unaEntidad != null)
				this._actividad = unaEntidad;

		}



        #endregion
        
        #region Attributes

		
		public int Id
		{
			get { return this._actividad.Id; }
			set { this._actividad.Id = value; }
		}

		private BodaView _boda = null;
		public BodaView Boda
		{
			get
			{
				if (this._boda == null)
				{
					if (this._actividad.Boda != null)
						this._boda = new BodaView(this._actividad.Boda);
				}
				return _boda;
			}
			set
			{
				if (value != null)
				{
					this._actividad.Boda = value.MapToEntity();
					this._boda = new BodaView(this._actividad.Boda);
				}
				else
				{
					this._actividad.Boda = null;
					this._boda = null;
				}
			}
		}

		private TipoProdView _tipoProd = null;
		public TipoProdView TipoProd
		{
			get
			{
				if (this._tipoProd == null)
				{
					if (this._actividad.TipoProd != null)
						this._tipoProd = new TipoProdView(this._actividad.TipoProd);
				}
				return _tipoProd;
			}
			set
			{
				if (value != null)
				{
					this._actividad.TipoProd = value.MapToEntity();
					this._tipoProd = new TipoProdView(this._actividad.TipoProd);
				}
				else
				{
					this._actividad.TipoProd = null;
					this._tipoProd = null;
				}
			}
		}


        #endregion

        #region Mapping

		
		public ActividadEntity MapToEntity()
		{
			return this._actividad;
		}

		public override Entity MapToBaseEntity()
		{
			return MapToEntity();
		}



        #endregion

        #region CollectionSyncro

		

        #endregion
        
    }
}
